package cn.iocoder.yudao.module.system.dal.dataobject.exam;

import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.*;

import java.time.LocalDateTime;

/**
 * 用户答题记录 DO
 *
 * @author 芋道源码
 */
@TableName("system_exam_user_answer")
@KeySequence("system_exam_user_answer_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库，可不写。
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ExamUserAnswerDO extends BaseDO {

    /**
     * 主键ID
     */
    @TableId
    private Long id;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 测试批次号
     */
    private String testBatchNo;

    /**
     * 题目ID，关联 system_exam_question.id
     */
    private Long questionId;

    /**
     * 第三方API返回的题目ID
     */
    private Long apiDetailsId;

    /**
     * 选项ID，关联 system_exam_option.id
     */
    private Long optionId;

    /**
     * 选项索引（从0开始）
     */
    private Integer answerIndex;

    /**
     * 用户答案内容
     */
    private String answerContent;

    /**
     * 得分
     */
    private String score;

    /**
     * 答题时间
     */
    private LocalDateTime answerTime;

    /**
     * 状态：1-有效，0-无效
     */
    private Integer status;

    /**
     * 备注
     */
    private String remark;

}
